<?php
namespace App\Financeiro\Controller;

use Foxframe\Registry;

class installController extends \Foxframe\Controller
{
	public function index($params = array())
	{
		/**
		 * Carregando o plano de contas
		 */
		$handle	= fopen(URL_PUBLIC_PATH."upload/financeiro/plano_contas_financeiro2.csv","r");
		while (($data = fgetcsv($handle, 0, ";")) !== FALSE)
		{
			$categoria	= null;
			if ($data[0] == 'NOME' && $data[1] == 'NUMERO')
				continue;

			$categoria	= $this->em->find('\Entities\Financeiro\Categoria', $data[2]);

			if (!($categoria instanceof \Entities\Financeiro\Categoria))
				$categoria	= new \Entities\Financeiro\Categoria();

			$categoria->setId($data[2]);
			$categoria->setNome($data[0]);
			$categoria->setCodigo(str_replace(' ', '', $data[1]));
			$categoria->setCodigoReduzido($data[2]);
			$categoria->setNatureza($this->getNaturezaMigracao($data[3]));

			$this->em->persist($categoria);
			$this->em->flush();

		}
		fclose ($handle);
		$this->em->flush();

		header('Content-Type: text/html; charset=utf-8');
		echo 'Sistema Financeiro Instalado/Atualizado com sucesso<br/><br/>';
		exit();
	}

	public function getNaturezaMigracao($value)
	{
		switch ($value) {
			case 'DEBI':
			case 'DEBITO':
			case 'D':
				return 'D';
			break;
			case 'CRED':
			case 'CREDITO':
			case 'C':
				return 'C';
			break;
		}
	}
}